1. Field of the Invention
The present invention relates to graphical systems for creating and executing data flow programs, and more specifically to a system and method for providing an audio or loudspeaker probe feature and improved debugging features in a graphical data flow program.
2. Description of the Related Art
In the field of instrumentation, computer systems are employed to model physical systems and emulate or control test and measurement hardware. An instrument is a device which collects information from an environment and displays this information to a user. Examples of various types of instruments include oscilloscopes, digital multimeters, pressure sensors, etc. Types of information which might be collected by respective instruments include: voltage, resistance, distance, velocity, pressure, frequency of oscillation, humidity or temperature, among others. An instrumentation system typically includes a general purpose computer system which controls its constituent instruments from which it acquires data which it analyzes, stores and presents to a user of the system.
Computer control of instrumentation has become increasingly desirable in view of the increasing complexity and variety of instruments available for use. U.S. Pat. Nos. 4,901,221 and 4,914,568 to Kodosky et al disclose a graphical system and method, i.e. a graphical programming environment, for modeling a process and for emulating or controlling instruments. The system and method disclosured in Kodosky et al allows a user to create a program by connecting graphical objects or nodes in a data flow manner. As the user constructs the data flow program, machine language instructions are automatically constructed which characterize an execution procedure which corresponds to the displayed procedure. Therefore, a user can create a text-based computer program solely by using a graphically based programming environment. This graphically based programming environment may be used for creating virtual instrumentation systems and modeling processes, as well as for any type of general programming.
When a graphical data flow program, also referred to as an iconic program, is created, each graphical object or node has one or more inputs for receiving data and one or more outputs for producing data. The graphical data flow program may also include one or more structure nodes which perform sequencing or looping functions in the program. When the program is executed, each node executes when it has received data at all of its inputs. Thus each node executes in turn and produces data on its one or more outputs that are provided to other nodes in the system.
One problem with creating a graphical data flow program, as with any program, is debugging the program to correct errors in the program. It would be desirable to view the data output from each node of a graphical data flow program as the program executes. More specifically, it would be desirable to be able to view the data flow program in operation during the debugging process.
U.S. Pat. No. 5,377,318 titled "Line Probe Diagnostic Display in an Iconic Programming System" and assigned to Hewlett Packard discloses a system which allows a user to select a line probe function during execution of an iconic program. When the line probe is selected, the iconic program stops executing and displays a message asking the user to select a connecting line in the program. When the user selects a line input to or output from an object, the line probe obtains information regarding the desired data and displays this data in a dialog box.
U.S. Pat. No. 5,481,740 for "Method and Apparatus for Providing Autoprobe Features in a Graphical Data Flow Diagram" and assigned to National Instruments discloses a system which automatically displays values produced by a plurality of nodes in a graphical data flow program as the program is executed. In this system, the user simply selects an autoprobe function prior to executing the program. During execution of the program, the system automatically displays data output from each node as each node is executed. This system also provides a feature wherein a bubble appears and propagates down the wires in the graphical data flow program to mark the movement of data as the block diagram executes. This provides the user with an indication of where in the block diagram action is occurring at a particular moment.
However, it would be highly desirable for a graphical programming system to have more intuitive debugging features which provide a greater amount of information to the user. It would also be desirable to provide a graphical programming environment which provides both visual and audial information regarding execution of a graphical program, such as a data flow program. It would further be desirable to provide improved output methods, such as audio output methods, for conveying information contained in charts and graphs.